webpackJsonp(["app/js/courseset/show/index"], {
  0: function(t, e) {
    t.exports = jQuery
  },
  "2d70a8242072c37fd8f4": function(t, e, n) {
    "use strict";

    function o(t) {
      return t && t.__esModule ? t : {
        default:
        t
      }
    }
    var i = n("d14d05cad9e7abf02a5d"),
        r = n("d5fb0e67d2d4c1ebaaed"),
        s = o(r),
        a = (n("9181c6995ae8c5c94b7a"), n("e66ca5da7109f35e9051")),
        l = o(a),
        c = n("584608d4ce1895020bac");
    new l.
    default, echo.init(), (0, i.chapterAnimate)(), function() {
      var t = $(".color-primary").css("color"),
          e = $(".color-warning").css("color");
      /*$("#freeprogress").easyPieChart({
        easing: "easeOutBounce",
        trackColor: "#ebebeb",
        barColor: t,
        scaleColor: !1,
        lineWidth: 14,
        size: 145,
        onStep: function(t, e, n) {
          $("canvas").css("height", "146px"), $("canvas").css("width", "146px"), 100 == Math.round(n) && $(this.el).addClass("done"), $(this.el).find(".percent").html(Translator.trans("course_set.learn_progress") + '<br><span class="num">' + Math.round(n) + "%</span>")
        }
      }),*/
      /*    $("#orderprogress-plan").easyPieChart({
        easing: "easeOutBounce",
        trackColor: "#ebebeb",
        barColor: e,
        scaleColor: !1,
        lineWidth: 14,
        size: 145
      });
      var n = $("#orderprogress-plan").length > 0 ? "transparent" : "#ebebeb";
      $("#orderprogress").easyPieChart({
        easing: "easeOutBounce",
        trackColor: n,
        barColor: t,
        scaleColor: !1,
        lineWidth: 14,
        size: 145,
        onStep: function(t, e, n) {
          100 == Math.round(n) && $(this.el).addClass("done"), $(this.el).find(".percent").html(Translator.trans("course_set.learn_progress") + '<br><span class="num">' + Math.round(n) + "%</span>")
        }
      })*/
    }(), function() {
      $(".member-expire").length && $(".member-expire a").trigger("click")
    }(), function() {
      var t = parseInt($("#discount-endtime-countdown").data("remaintime"));
      if (t >= 0) {
        var e = new Date((new Date).valueOf() + 1e3 * t);
        $("#discount-endtime-countdown").countdown(e, function(t) {
          $(this).html(t.strftime(Translator.trans("course_set.show.count_down_format_hint")))
        }).on("finish.countdown", function() {
          $(this).html(Translator.trans("course_set.show.time_finish_hint")), setTimeout(function() {
            $.post(app.crontab, function() {
              window.location.reload()
            })
          }, 2e3)
        })
      }
    }(), $(".js-attachment-list").length > 0 && new s.
    default ($(".js-attachment-list")), (0, c.buyBtn)($(".js-buy-btn")), (0, c.buyBtn)($(".js-task-buy-btn"))
  },
  "584608d4ce1895020bac": function(t, e, n) {
    "use strict";
    Object.defineProperty(e, "__esModule", {
      value: !0
    });
    var o = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
        function(t) {
          return typeof t
        } : function(t) {
          return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t
        };
    e.buyBtn = function(t) {
      t.on("click", function(t) {
        $.post($(t.currentTarget).data("url"), function(t) {
          "object" === (void 0 === t ? "undefined" : o(t)) ? window.location.href = t.url : $("#modal").modal("show").html(t)
        })
      })
    }
  },
  "8f3ec98312b1f1f6bafb": function(t, e) {
    !
        function() {
          "use strict";

          function t(o) {
            if (!o) throw new Error("No options passed to Waypoint constructor");
            if (!o.element) throw new Error("No element option passed to Waypoint constructor");
            if (!o.handler) throw new Error("No handler option passed to Waypoint constructor");
            this.key = "waypoint-" + e, this.options = t.Adapter.extend({}, t.defaults, o), this.element = this.options.element, this.adapter = new t.Adapter(this.element), this.callback = o.handler, this.axis = this.options.horizontal ? "horizontal" : "vertical", this.enabled = this.options.enabled, this.triggerPoint = null, this.group = t.Group.findOrCreate({
              name: this.options.group,
              axis: this.axis
            }), this.context = t.Context.findOrCreateByElement(this.options.context), t.offsetAliases[this.options.offset] && (this.options.offset = t.offsetAliases[this.options.offset]), this.group.add(this), this.context.add(this), n[this.key] = this, e += 1
          }
          var e = 0,
              n = {};
          t.prototype.queueTrigger = function(t) {
            this.group.queueTrigger(this, t)
          }, t.prototype.trigger = function(t) {
            this.enabled && this.callback && this.callback.apply(this, t)
          }, t.prototype.destroy = function() {
            this.context.remove(this), this.group.remove(this), delete n[this.key]
          }, t.prototype.disable = function() {
            return this.enabled = !1, this
          }, t.prototype.enable = function() {
            return this.context.refresh(), this.enabled = !0, this
          }, t.prototype.next = function() {
            return this.group.next(this)
          }, t.prototype.previous = function() {
            return this.group.previous(this)
          }, t.invokeAll = function(t) {
            var e = [];
            for (var o in n) e.push(n[o]);
            for (var i = 0, r = e.length; r > i; i++) e[i][t]()
          }, t.destroyAll = function() {
            t.invokeAll("destroy")
          }, t.disableAll = function() {
            t.invokeAll("disable")
          }, t.enableAll = function() {
            t.Context.refreshAll();
            for (var e in n) n[e].enabled = !0;
            return this
          }, t.refreshAll = function() {
            t.Context.refreshAll()
          }, t.viewportHeight = function() {
            return window.innerHeight || document.documentElement.clientHeight
          }, t.viewportWidth = function() {
            return document.documentElement.clientWidth
          }, t.adapters = [], t.defaults = {
            context: window,
            continuous: !0,
            enabled: !0,
            group: "default",
            horizontal: !1,
            offset: 0
          }, t.offsetAliases = {
            "bottom-in-view": function() {
              return this.context.innerHeight() - this.adapter.outerHeight()
            },
            "right-in-view": function() {
              return this.context.innerWidth() - this.adapter.outerWidth()
            }
          }, window.Waypoint = t
        }(), function() {
      "use strict";

      function t(t) {
        window.setTimeout(t, 1e3 / 60)
      }
      function e(t) {
        this.element = t, this.Adapter = i.Adapter, this.adapter = new this.Adapter(t), this.key = "waypoint-context-" + n, this.didScroll = !1, this.didResize = !1, this.oldScroll = {
          x: this.adapter.scrollLeft(),
          y: this.adapter.scrollTop()
        }, this.waypoints = {
          vertical: {},
          horizontal: {}
        }, t.waypointContextKey = this.key, o[t.waypointContextKey] = this, n += 1, i.windowContext || (i.windowContext = !0, i.windowContext = new e(window)), this.createThrottledScrollHandler(), this.createThrottledResizeHandler()
      }
      var n = 0,
          o = {},
          i = window.Waypoint,
          r = window.onload;
      e.prototype.add = function(t) {
        var e = t.options.horizontal ? "horizontal" : "vertical";
        this.waypoints[e][t.key] = t, this.refresh()
      }, e.prototype.checkEmpty = function() {
        var t = this.Adapter.isEmptyObject(this.waypoints.horizontal),
            e = this.Adapter.isEmptyObject(this.waypoints.vertical),
            n = this.element == this.element.window;
        t && e && !n && (this.adapter.off(".waypoints"), delete o[this.key])
      }, e.prototype.createThrottledResizeHandler = function() {
        function t() {
          e.handleResize(), e.didResize = !1
        }
        var e = this;
        this.adapter.on("resize.waypoints", function() {
          e.didResize || (e.didResize = !0, i.requestAnimationFrame(t))
        })
      }, e.prototype.createThrottledScrollHandler = function() {
        function t() {
          e.handleScroll(), e.didScroll = !1
        }
        var e = this;
        this.adapter.on("scroll.waypoints", function() {
          (!e.didScroll || i.isTouch) && (e.didScroll = !0, i.requestAnimationFrame(t))
        })
      }, e.prototype.handleResize = function() {
        i.Context.refreshAll()
      }, e.prototype.handleScroll = function() {
        var t = {},
            e = {
              horizontal: {
                newScroll: this.adapter.scrollLeft(),
                oldScroll: this.oldScroll.x,
                forward: "right",
                backward: "left"
              },
              vertical: {
                newScroll: this.adapter.scrollTop(),
                oldScroll: this.oldScroll.y,
                forward: "down",
                backward: "up"
              }
            };
        for (var n in e) {
          var o = e[n],
              i = o.newScroll > o.oldScroll,
              r = i ? o.forward : o.backward;
          for (var s in this.waypoints[n]) {
            var a = this.waypoints[n][s];
            if (null !== a.triggerPoint) {
              var l = o.oldScroll < a.triggerPoint,
                  c = o.newScroll >= a.triggerPoint,
                  u = l && c,
                  h = !l && !c;
              (u || h) && (a.queueTrigger(r), t[a.group.id] = a.group)
            }
          }
        }
        for (var p in t) t[p].flushTriggers();
        this.oldScroll = {
          x: e.horizontal.newScroll,
          y: e.vertical.newScroll
        }
      }, e.prototype.innerHeight = function() {
        return this.element == this.element.window ? i.viewportHeight() : this.adapter.innerHeight()
      }, e.prototype.remove = function(t) {
        delete this.waypoints[t.axis][t.key], this.checkEmpty()
      }, e.prototype.innerWidth = function() {
        return this.element == this.element.window ? i.viewportWidth() : this.adapter.innerWidth()
      }, e.prototype.destroy = function() {
        var t = [];
        for (var e in this.waypoints) for (var n in this.waypoints[e]) t.push(this.waypoints[e][n]);
        for (var o = 0, i = t.length; i > o; o++) t[o].destroy()
      }, e.prototype.refresh = function() {
        var t, e = this.element == this.element.window,
            n = e ? void 0 : this.adapter.offset(),
            o = {};
        this.handleScroll(), t = {
          horizontal: {
            contextOffset: e ? 0 : n.left,
            contextScroll: e ? 0 : this.oldScroll.x,
            contextDimension: this.innerWidth(),
            oldScroll: this.oldScroll.x,
            forward: "right",
            backward: "left",
            offsetProp: "left"
          },
          vertical: {
            contextOffset: e ? 0 : n.top,
            contextScroll: e ? 0 : this.oldScroll.y,
            contextDimension: this.innerHeight(),
            oldScroll: this.oldScroll.y,
            forward: "down",
            backward: "up",
            offsetProp: "top"
          }
        };
        for (var r in t) {
          var s = t[r];
          for (var a in this.waypoints[r]) {
            var l, c, u, h, p, f = this.waypoints[r][a],
                d = f.options.offset,
                w = f.triggerPoint,
                y = 0,
                g = null == w;
            f.element !== f.element.window && (y = f.adapter.offset()[s.offsetProp]), "function" == typeof d ? d = d.apply(f) : "string" == typeof d && (d = parseFloat(d), f.options.offset.indexOf("%") > -1 && (d = Math.ceil(s.contextDimension * d / 100))), l = s.contextScroll - s.contextOffset, f.triggerPoint = Math.floor(y + l - d), c = w < s.oldScroll, u = f.triggerPoint >= s.oldScroll, h = c && u, p = !c && !u, !g && h ? (f.queueTrigger(s.backward), o[f.group.id] = f.group) : !g && p ? (f.queueTrigger(s.forward), o[f.group.id] = f.group) : g && s.oldScroll >= f.triggerPoint && (f.queueTrigger(s.forward), o[f.group.id] = f.group)
          }
        }
        return i.requestAnimationFrame(function() {
          for (var t in o) o[t].flushTriggers()
        }), this
      }, e.findOrCreateByElement = function(t) {
        return e.findByElement(t) || new e(t)
      }, e.refreshAll = function() {
        for (var t in o) o[t].refresh()
      }, e.findByElement = function(t) {
        return o[t.waypointContextKey]
      }, window.onload = function() {
        r && r(), e.refreshAll()
      }, i.requestAnimationFrame = function(e) {
        (window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || t).call(window, e)
      }, i.Context = e
    }(), function() {
      "use strict";

      function t(t, e) {
        return t.triggerPoint - e.triggerPoint
      }
      function e(t, e) {
        return e.triggerPoint - t.triggerPoint
      }
      function n(t) {
        this.name = t.name, this.axis = t.axis, this.id = this.name + "-" + this.axis, this.waypoints = [], this.clearTriggerQueues(), o[this.axis][this.name] = this
      }
      var o = {
            vertical: {},
            horizontal: {}
          },
          i = window.Waypoint;
      n.prototype.add = function(t) {
        this.waypoints.push(t)
      }, n.prototype.clearTriggerQueues = function() {
        this.triggerQueues = {
          up: [],
          down: [],
          left: [],
          right: []
        }
      }, n.prototype.flushTriggers = function() {
        for (var n in this.triggerQueues) {
          var o = this.triggerQueues[n],
              i = "up" === n || "left" === n;
          o.sort(i ? e : t);
          for (var r = 0, s = o.length; s > r; r += 1) {
            var a = o[r];
            (a.options.continuous || r === o.length - 1) && a.trigger([n])
          }
        }
        this.clearTriggerQueues()
      }, n.prototype.next = function(e) {
        this.waypoints.sort(t);
        var n = i.Adapter.inArray(e, this.waypoints);
        return n === this.waypoints.length - 1 ? null : this.waypoints[n + 1]
      }, n.prototype.previous = function(e) {
        this.waypoints.sort(t);
        var n = i.Adapter.inArray(e, this.waypoints);
        return n ? this.waypoints[n - 1] : null
      }, n.prototype.queueTrigger = function(t, e) {
        this.triggerQueues[e].push(t)
      }, n.prototype.remove = function(t) {
        var e = i.Adapter.inArray(t, this.waypoints);
        e > -1 && this.waypoints.splice(e, 1)
      }, n.prototype.first = function() {
        return this.waypoints[0]
      }, n.prototype.last = function() {
        return this.waypoints[this.waypoints.length - 1]
      }, n.findOrCreate = function(t) {
        return o[t.axis][t.name] || new n(t)
      }, i.Group = n
    }(), function() {
      "use strict";

      function t(t) {
        this.$element = e(t)
      }
      var e = window.jQuery,
          n = window.Waypoint;
      e.each(["innerHeight", "innerWidth", "off", "offset", "on", "outerHeight", "outerWidth", "scrollLeft", "scrollTop"], function(e, n) {
        t.prototype[n] = function() {
          var t = Array.prototype.slice.call(arguments);
          return this.$element[n].apply(this.$element, t)
        }
      }), e.each(["extend", "inArray", "isEmptyObject"], function(n, o) {
        t[o] = e[o]
      }), n.adapters.push({
        name: "jquery",
        Adapter: t
      }), n.Adapter = t
    }(), function() {
      "use strict";

      function t(t) {
        return function() {
          var n = [],
              o = arguments[0];
          return t.isFunction(arguments[0]) && (o = t.extend({}, arguments[1]), o.handler = arguments[0]), this.each(function() {
            var i = t.extend({}, o, {
              element: this
            });
            "string" == typeof i.context && (i.context = t(this).closest(i.context)[0]), n.push(new e(i))
          }), n
        }
      }
      var e = window.Waypoint;
      window.jQuery && (window.jQuery.fn.waypoint = t(window.jQuery)), window.Zepto && (window.Zepto.fn.waypoint = t(window.Zepto))
    }()
  },
  c5e642028fa5ee5a3554: function(t, e) {
    !
        function() {
          "use strict";

          function t(o) {
            this.options = e.extend({}, t.defaults, o), this.container = this.options.element, "auto" !== this.options.container && (this.container = this.options.container), this.$container = e(this.container), this.$more = e(this.options.more), this.$more.length && (this.setupHandler(), this.waypoint = new n(this.options))
          }
          var e = window.jQuery,
              n = window.Waypoint;
          t.prototype.setupHandler = function() {
            this.options.handler = e.proxy(function() {
              this.options.onBeforePageLoad(), this.destroy(), this.$container.addClass(this.options.loadingClass), e.get(e(this.options.more).attr("href"), e.proxy(function(t) {
                var o = e(e.parseHTML(t)),
                    i = o.find(this.options.more),
                    r = o.find(this.options.items);
                r.length || (r = o.filter(this.options.items)), this.$container.append(r), this.$container.removeClass(this.options.loadingClass), i.length || (i = o.filter(this.options.more)), i.length ? (this.$more.replaceWith(i), this.$more = i, this.waypoint = new n(this.options)) : this.$more.remove(), this.options.onAfterPageLoad(r)
              }, this))
            }, this)
          }, t.prototype.destroy = function() {
            this.waypoint && this.waypoint.destroy()
          }, t.defaults = {
            container: "auto",
            items: ".infinite-item",
            more: ".infinite-more-link",
            offset: "bottom-in-view",
            loadingClass: "infinite-loading",
            onBeforePageLoad: e.noop,
            onAfterPageLoad: e.noop
          }, n.Infinite = t
        }()
  },
  d14d05cad9e7abf02a5d: function(t, e, n) {
    "use strict";
    Object.defineProperty(e, "__esModule", {
      value: !0
    });
    var o = e.toggleIcon = function(t, e, n) {
      var o = t.find(".js-remove-icon"),
          i = t.find(".js-remove-text");
      o.hasClass(e) ? (o.removeClass(e).addClass(n), i && i.text(Translator.trans("收起"))) : (o.removeClass(n).addClass(e), i && i.text(Translator.trans("展开")))
    };
    e.chapterAnimate = function() {
      var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "body",
          e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : ".js-task-chapter",
          n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : "es-icon-remove",
          i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : "es-icon-anonymous-iconfont";
      $(t).on("click", e, function(t) {
        var r = $(t.currentTarget);
        r.nextUntil(e).animate({
          height: "toggle",
          opacity: "toggle"
        }, "normal"), o(r, n, i)
      })
    }
  },
  e66ca5da7109f35e9051: function(t, e, n) {
    "use strict";

    function o(t, e) {
      if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function")
    }
    function i(t, e) {
      if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
      return !e || "object" != typeof e && "function" != typeof e ? t : e
    }
    function r(t, e) {
      if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function, not " + typeof e);
      t.prototype = Object.create(e && e.prototype, {
        constructor: {
          value: t,
          enumerable: !1,
          writable: !0,
          configurable: !0
        }
      }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e)
    }
    Object.defineProperty(e, "__esModule", {
      value: !0
    });
    var s = function() {
      function t(t, e) {
        for (var n = 0; n < e.length; n++) {
          var o = e[n];
          o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(t, o.key, o)
        }
      }
      return function(e, n, o) {
        return n && t(e.prototype, n), o && t(e, o), e
      }
    }();
    n("8f3ec98312b1f1f6bafb"), n("c5e642028fa5ee5a3554");
    var a = n("63fff8fb24f3bd1f61cd"),
        l = function(t) {
          return t && t.__esModule ? t : {
            default:
            t
          }
        }(a),
        c = function(t) {
          function e(t) {
            o(this, e);
            var n = i(this, (e.__proto__ || Object.getPrototypeOf(e)).call(this));
            return n.options = t, n.initDownInfinite(), n.initUpLoading(), n
          }
          return r(e, t), s(e, [{
            key: "initUpLoading",
            value: function() {
              $(".js-up-more-link").on("click", function(t) {
                var e = $(t.currentTarget);
                $.ajax({
                  method: "GET",
                  url: e.data("url"),
                  async: !1,
                  success: function(t) {
                    $(t).find(".infinite-item").prependTo($(".infinite-container"));
                    var n = $(t).find(".js-up-more-link");
                    n.length > 0 ? e.data("url", n.data("url")) : e.remove()
                  }
                })
              })
            }
          }, {
            key: "initDownInfinite",
            value: function() {
              var t = {
                element: $(".infinite-container")[0]
              };
              t = Object.assign(t, this.options), this.downInfinite = new Waypoint.Infinite(t)
            }
          }]), e
        }(l.
            default);
    e.
        default = c
  }
}, ["2d70a8242072c37fd8f4"]);